開發新的springboot 專案,一開始建程式專案時,除非有舊的專案code很類似可以抄很多,不然我還是習慣用 https://start.spring.io/ 開始。使用新的版號,確認一下引用的 Dependencies,其實相對不會很花時間,還可以看看他現在有推什麼新的整合Lib出來可以用也是不錯。不過如果是第三版號.0,M幾的那種,要多看幾眼,通常在這種剛升小版號,可能會有第三方支援的升版還沒有跟上,不過重點還是看,已確定要使用的有支援就可以。
配最新的版號我覺得很重要,因為許多已知有名的重大資安修復(ex: log4shell、spring4shell),springboot 都會出新版更正,現在不升,盤查時還是要乖乖升,趁開發中就確認dependencies,method運用有沒有衝突還是比較好的。
透過 spring starter把基本的pom.xml 專案建好後,就可以從舊專案搬需要的code進來放,看他compile有沒有順利。不過當然如果大版號不一樣的話,就要很有心理準備看到很多紅叉叉了QQ。
而Spring Security 應該是負責程式底層的人,第一個要設計跟實作的部份,我通常是用到這到以下的部份:
Web Security
Method Security
搞定Security 後,還有通用的 i18n MessageSource,簡單設定驗證一下,就差不多了。
別忘了還有error page的設定,至少404、401、403、500這幾個常見的,設定好,別用預設的,才不會像學生練習作業網站。
另外還有常用的 Interceptor,有規劃好的話,也可以處理不少項目,例如多國語言切換,輸入內容injection,有的人會把權限控管/加工做在這一層也可以…,讓後續的內容開發,可以更專注在商業邏輯的實作。
通常一個大版號,有參與過開發,至少就留一份底層設定當參考,因為有用身體記住的部份,回找還是比Google快,而且成功率也比較高。然後有興趣可以再多研究,把底層多了解一點,或是改得更好用/通用,對之後還是有幫助的。
不過隨著年資往上長,寫code的時間相對比較少,而且只剩複雜或是難的要寫Orz…簡單的都給菜鳥或新鮮人練習去了,基於有經驗,年紀大的成見?!,也不好意思寫太爛,而且菜鳥真的比較愛問,被問倒的話,也覺得有點遜就是。雖然寫得項目不多,但有時間的話,其實還會比較認真去了解多一點運作原理,以前都會Google 問 sample code,現在都還會再多問一下作法比較,看一下大家的討論優缺點。
碎碎念這麼多,這次都用不到XD…簡易查詢系統就是輕鬆愉快!